<p>En este capitulo vamos a ver algo que probablemente no se le vea importancia ahora mismo pero que con el tiempo es de tremenda utilidad, los eventos personalizados. A veces para razones de control es mucho más fácil crear un nuevo evento, un evento personalizado. Lo vamos a ver a través de un ejemplo un tanto didáctico, no tan práctico, pero ayudará a que se entienda como crear un nuevo evento, para ello veremos el método "Trigger" que nos va a permitir lanzar o ejecutar un evento</p>
<p>Para realizar todo esto usaremos la siguiente estructura: </p> 
<pre>
<input type="checkbox" id="miInput" checked="checked"> Check
<button class="change" id="btn1">Apagar 1</button>
<button class="change" id="btn2">Apagar 2</button>
</pre>

<p>Ahora vamos con la estructura que utilizará jQuery. Vamos a crear un evento de nombre "cambio" que en funcíón de si está el check marcado vamos a cambiar tanto el estado del propio check como el texto de los botones de la siguiente manera:</p>
<pre>
$("#miInput").on('cambio', function(e, id){
	alert(id);
	if(this.checked)
	{
		$("#miInput").removeAttr('checked');
		$('.change').text('Encender');
	}
	else
	{
		$("#miInput").attr('checked', 'checked');
		$('.change').text('Apagado');
	}
});
</pre>

<p>Como podéis comprobar también hemos utilizado cosas vistas en anteriores capítulos como el que a la función del evento se le va a poder pasar el id del elemento que realiza la llamada a nuestro evento. Ahora nos queda asociar nuestro evento con una acción, para eso usamos el método "Trigger":</p>
<pre>
$('.change').on('click', function(){
	$("#miInput").trigger('cambio',[$(this).attr('id')]);
});
</pre>
<p>A través del corchete se le pasan todos los parámetros extra que fuesen necesarios a  la función de nuestro evento, en este caso sólo le pasamos el id del elemento que realiza la llamada, pero podríamos pasarle cualquier otro a mayores separándolos por comas. </p>
<p>Para finalizar podeis ver todo este código funcionando a continuación:</p>
<input type="checkbox" id="miInput" checked="checked"> Check
<button class="change" id="btn1">Apagar 1</button>
<button class="change" id="btn2">Apagar 2</button>

<script type="text/javascript" src="http://www.rfsouto.com/Scripts/capitulo15.js"></script>
<script type="text/javascript">
<!--
jqeventosperso();
//-->
</script>